
using Nop.Core;
using Nop.Core.Domain.XJ;
using System.Collections.Generic;

namespace Nop.Services.XJ
{
	/// <summary>
	/// XJPlace service
	/// </summary>
	public partial interface IXJPlaceService
	{
		/// <summary>
		/// Gets all XJPlaces
		/// </summary>
		/// <returns>XJPlace</returns>
		IList<XJPlace> GetAllXJPlaces();

		IPagedList<XJPlace> GetAllPlaces(string name = "", bool showHidden = true, int pageIndex = 0, int pageSize = int.MaxValue);

		IList<XJPlace> GetPlacesByIds(int[] placeIds);

		/// <summary>
		/// Gets a XJPlace 
		/// </summary>
		/// <param name="xJPlaceId">XJPlace identifier</param>
		/// <returns>XJPlace</returns>
		XJPlace GetXJPlaceById(int xJPlaceId);

		string GetNameById(int id);

		/// <summary>
		/// Inserts a XJPlace
		/// </summary>
		/// <param name="xJPlace">XJPlace</param>
		void InsertXJPlace(XJPlace xJPlace);

		/// <summary>
		/// Updates the XJPlace
		/// </summary>
		/// <param name="xJPlace">XJPlace</param>
		void UpdateXJPlace(XJPlace xJPlace);

		/// <summary>
		/// Deletes a XJPlace
		/// </summary>
		/// <param name="XJPlace">XJPlace</param>
		void DeleteXJPlace(XJPlace xJPlace);

		void DeletePlace(XJPlace xJPlace);
	}
}

